//二叉树的基本操作
#include "based_operation.h"



//二叉树的三种递归遍历：先序、中序、后序

//先序递归
void PreOrderTraverse(BiTree &T)
{
    if(T!=NULL)
    {
        printf("%c",T->data);
        PreOrderTraverse(T->lchild);
        PreOrderTraverse(T->rchild);
    }
}

//中序递归
void InOrderTraverse(BiTree &T)
{
    if(T!=NULL)
    {
        InOrderTraverse(T->lchild);
        printf("%c",T->data);
        InOrderTraverse(T->rchild);
    }
}

//后序递归
void PostOrderTraverse(BiTree &T)
{
    if(T!=NULL)
    {
        PostOrderTraverse(T->lchild);
        PostOrderTraverse(T->rchild);
        printf("%c",T->data);
    }
}


//非递归的先序、中序、后序遍历

//先序非递归
void non_PreOrderTraverse(BiTree &T)
{
    
}